/*************************************************************************
	> File Name: main.cpp
	> Author: ma6174
	> Mail: ma6174@163.com 
	> Created Time: 2021年11月23日 星期二 21时27分09秒
 ************************************************************************/

#include<iostream>
#include "decorator.h"
#include <string>
using namespace std;

int main()
{
	Person* xc = new Person("小菜");

	cout << "第一种装扮：" << endl;

	Finery* pqx = new Sneakers(xc);
	Finery* kk = new BigTrouser(xc);
	Finery* dtx = new TShirts(xc);

	pqx->decorate(xc);
	kk->decorate(pqx);
	dtx->decorate(kk);
	dtx->show();

	cout << "\n第二种装扮：" << endl;
	Finery* px = new LeatherShoes(xc);
	Finery* ld = new Tie(xc);
	Finery* xz = new Suit(xc);

	px->decorate(xc);
	ld->decorate(px);
	xz->decorate(ld);
	xz->show();

	cout << "\n第三种装扮：" << endl;
	Finery* pqx2 = new Sneakers(xc);
	Finery* px2 = new LeatherShoes(xc);
	Finery* kk2 = new BigTrouser(xc);
	Finery* ld2 = new Tie(xc);

	pqx2->decorate(xc);
	px2->decorate(pqx2);
	kk2->decorate(px2);
	ld2->decorate(kk2);
	ld2->show();

	return 0;
}
